PART 04. 반복 구조

목차


학습 목표

4.1 for 문

for 문은 정해진 횟수만큼 코드를 반복 실행할 때 사용한다.

본 예제는 range() 함수로 반복 횟수를 정한 뒤, for 문으로 동일한 작업을 일정 횟수만큼 수행하는 방법을 보인다. 변수 i는 반복 과정에서 0 또는 지정된 시작값부터 증가하며, 각 반복에서 코드 블록이 한 번씩 실행된다.


for i in range(5):
    print("안녕하세요")

range 함수

본 예제는 range() 함수로 반복 횟수를 정한 뒤, for 문으로 동일한 작업을 일정 횟수만큼 수행하는 방법을 보인다. 변수 i는 반복 과정에서 0 또는 지정된 시작값부터 증가하며, 각 반복에서 코드 블록이 한 번씩 실행된다.


for i in range(1, 6):
    print(i)

LAB: 약수 구하기

본 예제는 range() 함수로 반복 횟수를 정한 뒤, for 문으로 동일한 작업을 일정 횟수만큼 수행하는 방법을 보인다. 변수 i는 반복 과정에서 0 또는 지정된 시작값부터 증가하며, 각 반복에서 코드 블록이 한 번씩 실행된다.


num = int(input("정수 입력: "))
for i in range(1, num+1):
    if num % i == 0:
        print(i)

4.2 while 문

while 문은 조건식이 참(True)인 동안 반복 실행된다.

본 예제는 while 문이 조건식이 참인 동안 반복 실행된다는 점을 확인한다. 반복 변수의 초기화와 갱신(i += 1 등)이 함께 제시되며, 조건이 거짓이 되는 시점에 반복이 종료된다.


i = 1
while i <= 5:
    print(i)
    i += 1

break와 continue

본 예제는 while 문으로 조건 기반 반복을 수행하며, 특정 조건을 만족할 때 break 문으로 반복을 즉시 종료하는 흐름을 보여 준다. 입력값이나 상태 변수를 점검하여 반복을 계속할지 여부를 결정한다.


while True:
    x = input("입력(종료 입력 시 끝): ")
    if x == "종료":
        break
    print(x)

LAB: 5만 원 모으기

본 예제는 while 문이 조건식이 참인 동안 반복 실행된다는 점을 확인한다. 반복 변수의 초기화와 갱신(i += 1 등)이 함께 제시되며, 조건이 거짓이 되는 시점에 반복이 종료된다.


money = 100
total = 0
day = 0

while total < 50000:
    day += 1
    total += money
    money += 100

print(day, "일 걸립니다.")

4.3 [플러스 예제] 숫자 맞히기 게임

본 예제는 while 문으로 조건 기반 반복을 수행하며, 특정 조건을 만족할 때 break 문으로 반복을 즉시 종료하는 흐름을 보여 준다. 입력값이나 상태 변수를 점검하여 반복을 계속할지 여부를 결정한다.


import random

answer = random.randint(1,100)

while True:
    user = int(input("1~100 숫자 입력: "))
    if user == answer:
        print("정답!")
        break
    elif user < answer:
        print("UP")
    else:
        print("DOWN")

4.4 [플러스 예제] 번역기

googletrans 라이브러리를 사용한 반복 번역기 예제

본 예제는 while 문으로 조건 기반 반복을 수행하며, 특정 조건을 만족할 때 break 문으로 반복을 즉시 종료하는 흐름을 보여 준다. 입력값이나 상태 변수를 점검하여 반복을 계속할지 여부를 결정한다.


from googletrans import Translator

translator = Translator()

while True:
    lang = input("언어 선택(en, ja, 종료): ")
    if lang == "종료":
        break
    text = input("번역할 문장: ")
    result = translator.translate(text, dest=lang)
    print(result.text)